package com.hh.service.service.integral;

import com.baomidou.mybatisplus.extension.service.IService;
import com.hh.common.model.integral.IntegralOrder;
import com.hh.common.page.CommonPage;
import com.hh.common.request.PageParamRequest;
import com.hh.common.request.StoreOrderSearchRequest;
import com.hh.common.request.StoreOrderSendRequest;
import com.hh.common.response.StoreOrderCountItemResponse;
import com.hh.common.response.integral.IntegralAdminOrderDetailResponse;
import com.hh.common.response.integral.IntegralOrderDetailInfoResponse;
import com.hh.common.response.integral.IntegralOrderDetailResponse;

import java.util.List;

public interface IntegralOrderService extends IService<IntegralOrder> {
    /**
     * 创建积分订单
     * @param storeOrder
     * @return
     */
    boolean create(IntegralOrder storeOrder);

    CommonPage<IntegralOrderDetailResponse> orderList(Integer type, String keyword, PageParamRequest pageRequest);

    List<IntegralOrder> getUserOrderList(Integer userId, Integer status, String keyword, PageParamRequest pageRequest);

    IntegralOrderDetailInfoResponse detailOrder(String orderId);

    IntegralOrder getByOderId(String orderId);

    Boolean take(String orderId);

    CommonPage<IntegralAdminOrderDetailResponse> getAdminList(StoreOrderSearchRequest request, PageParamRequest pageParamRequest, boolean b);

    StoreOrderCountItemResponse getOrderStatusNum(String dateLimit, boolean b);

    Boolean send(StoreOrderSendRequest request, boolean b);

    IntegralAdminOrderDetailResponse info(String orderNo);
}
